package Harmonisation.CreationDuChant.Arbre;

import java.util.ArrayList;

public class Noeud<T> {
	private ArrayList<Noeud<T>> suivant;
	private T element;

	public Noeud(T element) {
		this.element = element;
		this.suivant = new ArrayList<Noeud<T>>(0);
	}

	public void ajouterVoisin(Noeud<T> noeud) {
		this.suivant.add(noeud);
	}

	public ArrayList<Noeud<T>> getSuivant() {
		return suivant;
	}

	public void setSuivant(ArrayList<Noeud<T>> suivant) {
		this.suivant = suivant;
	}

	public T getElement() {
		return element;
	}

	public void setElement(T element) {
		this.element = element;
	}

	public String toString() {
		String s = "";
		s += element;
		s += "cet element a " + suivant.size() + " suivant";
		return s;
	}

	@Override
	public boolean equals(Object v) {
		if (v.getClass().equals(this.getClass())) {
			Noeud<?> n = (Noeud<?>) v;

			return n.element.equals(this.element);
		}
		if (v.getClass().equals(element.getClass())) {
			return this.element.equals(v);
		}
		return false;
	}

}
